home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_100 / 141_01 / graph.doc < prev    next >
Text File  |  1985-03-09  |  2KB  |  69 lines

  1. /* graprim.doc - primitives for CHROMAtrs/TMS9918A graphics */
  2. /* after an .asm package marked 
  3.     "(c) 1982 South Shore Computer Concepts, Hewlett, NY"
  4.     rewritten (NOT copied!) in BDS C 1983 Sep pmk */
  5. /* vram addresses are NOT self-adjusting - DON'T MOVE THEM ! */
  6.  
  7. mode2 ()        /* set up tms9918 graphics mode 2 */
  8.  
  9. cls (fore_gr, back_gr)        /* clear screen */
  10. short fore_gr, back_gr ;
  11.  
  12. spr_init ()        /* clear sprite pattern table */
  13.  
  14. spr_def (pat_num, pat)    /* define sprite pattern */
  15. char pat_num, pat[32];
  16.  
  17. spr_patc (sp_num, pat_num, col)    /* set sprite pattern, color */
  18. char sp_num, pat_num, col;
  19.  
  20. spr_mov (sp_num, x, y)    /* move sprite to x, y */
  21. char sp_num, x, y ;
  22.  
  23. ld_font (font)        /* load font.def, define characters */
  24. short font[0x60][6] ;    /* dot-matrix images, 6 bytes/char */
  25.  
  26. cbar ()            /* draw colored bars */
  27.  
  28. wr_str (font, x, y, foregr, text)    /* write string */
  29. unsigned x, y, foregr ;    char **font, *text ;
  30.  
  31. wr_ch (font, x, y, foregr, ch)    /* write char to screen, G2 */
  32. short font[0x60][6] ; unsigned x, y, foregr, ch ;
  33.  
  34. follow (sprite, stk, pat, off, col, x, y)
  35.             /* track joystick stk with sprite */
  36.  
  37. set (h, v, col)        /* point on */
  38. unsigned h, v, col ;
  39.  
  40. reset (h, v)        /* point off */
  41. unsigned h, v ;
  42.  
  43. test (h, v)        /* test point */
  44. unsigned h, v ;
  45.  
  46. xycalc (h, v, offset, b_m)    /* find byte & bit for (h, v) */
  47. unsigned h, v, *offset, *b_m ;
  48.  
  49. vram_test ()        /* write vram, read back */
  50.  
  51. vram_err (l, r, w)
  52.  
  53. vram_out (addr, data)    /* output to vram thru tms9918a */
  54. unsigned addr, data ;
  55.  
  56. vram_in (addr)        /* input from vram thru tms9918a */
  57. unsigned addr ;
  58.  
  59. vreg_out (reg, data)    /* output to vreg in tms9918a */
  60. unsigned reg, data ;
  61.  
  62. port_on ()    /*  enable i/o bus (modiii?), read status */
  63. unsigned sprite, stk, pat, off, col, x, y ;
  64.  
  65. s, 6 bytes/char */
  66.  
  67. cbar ()            /* draw colored bars */
  68.  
  69. wr_str (font, x, y, foregr, text)    /* write string *